package com.msb.common.model;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @Author: lmf
 * @Create: 2025/3/7 13:11
 * Description:
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class StandardSubmit implements Serializable {
    // 显式定义 serialVersionUID
    private static final long serialVersionUID = 1L;
    /**
     * 针对当前短信的唯一id 雪花算法生成
     */
    private Long sequenceId;
    /**
     * 客户id 基于apikey得到查询缓存模块得到客户id
     */
    private Long clientId;
    /**
     * 客户端的ip白名单  查询缓存
     */
    private String ip;

    /**
     * 客户业务内的id  请求传递
     */
    private String uid;

    /**
     * 目标手机号 请求传递
     */
    private String mobile;

    /**
     * 短信内容  请求传递
     */
    private String sign;

    /**
     * 签名id
     */
    private Long signId;

    /**
     * 短信内容的签名  请求传递
     */
    private String text;


    /**
     * 短信发送时间 当前系统时间
     */
    private LocalDateTime sendTime;
    /**
     * 当前短信的费用 计算短信内容的文字 70个字一条，超过部分67个字一条
     */
    private Long fee;

    /**
     * 目标手机号的运营商 (策略模块)
     */
    private Integer operatorId;

    /**
     * 目标手机号的归属区号  (策略模块)
     */
    private String areaCode;

    /**
     * 目标手机号区域名称  (策略模块)
     */
    private String area;

    /**
     * 通道下发的原号码  (策略模块)
     */
    private String srcNumber;
    /**
     * 通道的Id信息  (策略模块)
     */
    private Long channelId;
    /**
     * 短信的发送状态 0:等待，1：成功，2：失败  默认0
     */
    private int reportState;

    /**
     * 短息发送失败的原因
     */
    private String errorMessage;

    /**
     * 获取到客户端的正式地址
     */
    private String realIp;
    /**
     * 客户端携带的apikey
     */
    private String apiKye;
    /**
     * 0-验证码短袖 1-通知类短信 2 -营销类短信
     */
    private String state;


}
